/**
 * @author zhangyi1
 * @version 1.0.1
 * @history 
 * 		1.0.0		# 上移下移原有样式还存在	@20081127
 */

try {
	if(!FWK.Util){
		throw "ns";
	}
} catch (ex) {
	try{FWK}catch(e){FWK={}}
	FWK.Util = {}
}

FWK.Util.domSort = {
	up:function(_id) {		
		var _obj = $(_id);

		var _parent = _obj.parentNode;
		var _type = _obj.tagName;
		var _doms = _parent.getElementsByTagName(_type);
		var _len = _doms.length;
		var _pos = 0;

		if(_len < 1 || _doms[0].id == _id) {
//			alert("只有一个/第一个,不能被上移或下移");
			return;
		}

		for(var i=0;i<_len;i++) {
			if(_id == _doms[i].id) {
				_pos = i;
				break;
			}
		}

		//var _temp = _obj.cloneNode(true);
		var _temp = _parent.removeChild(_obj);			
		_parent.insertBefore(_temp,_doms[_pos-1]);
		
		_temp.className = "";
	},
	down:function(_id) {
		var _obj = $(_id);

		var _parent = _obj.parentNode;
		var _type = _obj.tagName;
		var _doms = _parent.getElementsByTagName(_type);
		var _len = _doms.length;
		var _pos = -1;

		if(_len < 1 || _doms[_len-1].id == _id) {
//			alert("只有一个/最后一个,不能被上移或下移");
			return;
		}
		
		if(_pos == -1) {
			for(var i=0;i<_len;i++) {
				if(_id == _doms[i].id) {
					_pos = i;
					break;
				}
			}
		}
		
		//var _temp = _obj.cloneNode(true);
		var _temp = _parent.removeChild(_obj);
		_temp.className = "";
		if(_parent.lastChild == _doms[_pos]) {// 如果最后的节点是目标元素，则直接添加。因为默认是最后
			_parent.appendChild(_temp);
		} else {//如果不是，则插入在目标元素的下一个兄弟节点 的前面。也就是目标元素的后面。
			_parent.insertBefore(_temp,_doms[_pos].nextSibling);
		}
	},
	del:function(_id) {
		var _obj = $(_id);
		var _parent = _obj.parentNode;
		_parent.removeChild(_obj);
	}
}